package chixing.day08.static_demo;

/**
 *new Student()
 * 1.类加载
 *      1.1 初始化类变量，在内存中只有一份，共享
 *      1.2 执行static代码块
 * 2.创建对象
 *      2.1 开辟一块堆内存
 *      2.2 初始化实例变量
 *      2.3 执行普通代码块
 *      2.4 执行构造函数
 */
public class Student {
    //实例变量
    //创建对象的时候才会有
    public int stuNo;//实例变量   归 实例所有（归 对象所有）
    public String stuName;
    public long stuTel;


    //类变量  ，归 类所有，内存中只有一份   ，通过类调用 类名.属性名
    //再类加载的时候就有了
    public static String schoolName = "苏州大学";

    //在类加载的时候执行
    //业务上：  重量级任务，只执行一次
    static {
        System.out.println("静态代码块111111");
        System.out.println(schoolName);
    }
    //普通代码块
    {
        System.out.println("普通代码块"+stuName);
    }
    public Student(){
        System.out.println("无参构造");
        System.out.println("无参构造"+ stuName);
    }
    public static void fun(){
        System.out.println("普通的static方法在调用的时候才执行");
    }


}
